package model

type IdReqBody struct {
	Id string `json:"id"`
}

// StoreListReq 店铺
type StoreListReq struct {
	Page     int    `json:"page"`
	PageSize int    `json:"page_size"`
	Keyword  string `json:"keyword"`
	OnState  int    `json:"on_state"`
}

// StoreList 店铺
type StoreList struct {
	Page       int           `json:"page"`
	Size       int           `json:"size"`
	TotalPage  int           `json:"total_page"`
	TotalCount int           `json:"total_count"`
	IsLastPage bool          `json:"is_last_page"`
	Data       []StoreDetail `json:"data"`
}

// StoreDetail 店铺详情
type StoreDetail struct {
	Id               string   `json:"id"`
	Name             string   `json:"name"`
	JoinTime         string   `json:"join_time"`
	StoreTypeName    string   `json:"store_type_name"`
	SiteHot          int      `json:"site_hot"`
	Rate             int      `json:"rate"`
	Phone            string   `json:"phone"`
	CityDistrict     string   `json:"city_district"`
	StaffNum         int      `json:"staff_num"`
	Active           bool     `json:"active"`
	Province         string   `json:"province"`
	DefaultResource  Resource `json:"defaultResource"`
	CreateBy         string   `json:"createBy"`
	AppointmentCount int      `json:"appointmentCount"`
	VerifyCount      int      `json:"verifyCount"`
	IsOpen           bool     `json:"isOpen"`
	IsPaid           bool     `json:"isPaid"`
	ServiceCycle     int      `json:"serviceCycle"`
}

// StoreDetails 店铺详情
type StoreDetails struct {
	Id             string              `json:"id"`
	BaseInfo       StoreDetailBaseInfo `json:"base_info"`
	ServiceInfo    StoreServiceInfo    `json:"serviceInfo"`
	ThumbImgs      []string            `json:"thumb_imgs"`
	Qualifications Qualifications      `json:"qualifications"`
}

// StoreServiceInfo 商户详情-服务信息
type StoreServiceInfo struct {
	Hot            int `json:"hot"`
	ApplyCount     int `json:"apply_count"`
	CheckCount     int `json:"check_count"`
	Rate           int `json:"rate"`
	CommentCount   int `json:"comment_count"`
	ComplaintCount int `json:"complaint_count"`
	ApplyRank      int `json:"apply_rank"`
}

// Qualifications 资质
type Qualifications struct {
	InfoUrl  []string `json:"infoUrl"`  // 资质URL
	CreateBy string   `json:"createBy"` // 创建者
}

// StoreDetailBaseInfo 商户详情-商家基本信息
type StoreDetailBaseInfo struct {
	Name             string                         `json:"name"`
	StoreTypeName    string                         `json:"store_type_name"`
	StoreType        int                            `json:"store_type"`
	Phone            string                         `json:"phone"`
	Address          string                         `json:"address"`
	WorkTime         string                         `json:"work_time"`
	AppointmentType  int                            `json:"appointmentType"`
	Advance          int                            `json:"advance"`
	Times            int                            `json:"times"`
	Maxcap           int                            `json:"maxcap"`
	OpenTimes        []OpenTime                     `json:"openTimes"`
	MaxPeople        int                            `json:"max_people"`
	SitePlanning     int                            `json:"site_planning"`
	JoinTime         string                         `json:"join_time"`
	Tags             []string                       `json:"tags"`
	MemberNoti       string                         `json:"member_noti"`
	MapShowName      string                         `json:"map_show_name"`
	ParkType         int                            `json:"park_type"`
	LockerType       int                            `json:"locker_type"`
	ShowerType       int                            `json:"shower_type"`
	SiteArea         []interface{}                  `json:"site_area"`
	Location         string                         `json:"location"`
	Adcode           string                         `json:"adcode"`
	WifiType         int                            `json:"wifi_type"`
	MembersInterests []ApiStoreMembersInterestsResp `json:"members_interests"`
	ItemName         string                         `json:"itemName"`
	ItemPrice        int                            `json:"itemPrice"`
	IsAppointment    bool                           `json:"isAppointment"`
	ServiceNum       int                            `json:"serviceNum"`
	ServicePrice     int                            `json:"servicePrice"`
	IsOpen           bool                           `json:"isOpen"`
	CooperationWay   int                            `json:"cooperationWay"`
	Discount         int                            `json:"discount"`
	HandlingFree     int                            `json:"handlingFree"`
	IsBuy            bool                           `json:"isBuy"`
	IsRecommend      bool                           `json:"isRecommend"`
	IsPaid           bool                           `json:"isPaid"`
	ServiceCycle     int                            `json:"service_cycle"`
}

// Resource 资源
type Resource struct {
	Url    string `json:"url"`
	Height int    `json:"height"`
	Weight int    `json:"weight"`
}

// StoreAddBindReq 店铺绑定
type StoreAddBindReq struct {
	StoreBody
	AgentId string `json:"agentId"`
}

// StoreBody 店铺
type StoreBody struct {
	Id               string                         `json:"id,optional"`
	StoreId          string                         `json:"store_id,optional"`
	Platform         string                         `json:"platform,optional,default=xiuxian"` // 平台: jianshen健身吧 xiuxian休闲吧 kangyang康养吧
	Name             string                         `json:"name"`                              // 店铺名
	StoreType        int                            `json:"store_type"`                        // 类型ID
	Phone            string                         `json:"phone"`                             // 电话
	Location         string                         `json:"location"`                          // 坐标 , 分割
	ADCode           string                         `json:"adcode"`                            // 区 区域代码
	Address          string                         `json:"address"`                           // 详细地址
	OpenTimes        []OpenTime                     `json:"openTimes"`                         // 开放时间
	Tags             []string                       `json:"tags"`                              // 标签
	ThumbImgs        []string                       `json:"thumb_imgs"`                        // 门头照
	MemberNoti       string                         `json:"member_noti,optional"`              // 会员须知
	SitePlanning     int                            `json:"site_planning,optional"`            // 场地面积
	MembersInterests []ApiStoreMembersInterestsResp `json:"members_interests"`                 // 会员权益
	MapShowName      string                         `json:"map_show_name"`                     // 定位回显
	AppointmentType  int                            `json:"appointmentType"`                   //允许预约类型: 0 全时段 1 节假日不可预约
	Advance          int                            `json:"advance"`                           // 提前预约时段
	Times            int                            `json:"times"`                             // 预约时长
	Maxcap           int                            `json:"maxcap"`                            // 最多预约容量 空/0不限制
	Qualifications   []string                       `json:"qualifications"`                    // 资质URL(营业执照等图片)
	ItemName         string                         `json:"itemName"`                          // 项目名称
	ItemPrice        int64                          `json:"itemPrice"`                         // 项目金额
	IsAppointment    bool                           `json:"isAppointment"`                     // 是否需要预约
	ServiceNum       int64                          `json:"serviceNum"`                        // 服务次数
	ServicePrice     int64                          `json:"servicePrice"`                      // 服务金额
	SupportTakeaway  bool                           `json:"supportTakeaway"`                   // 是否支持外卖
	PackingFee       int64                          `json:"packingFee"`                        // 包装费
	MaxPeople        int                            `json:"max_people,optional"`               // 最大人数
	ParkType         int                            `json:"park_type,optional"`                // 停车场类型 0.无  1.收费  2. 免费
	LockerType       int                            `json:"locker_type,optional"`              // 寄存柜类型 0.无  1.收费  2. 免费
	ShowerType       int                            `json:"shower_type,optional"`              // 淋浴房类型 0.无  1.收费  2. 免费
	SiteArea         []string                       `json:"site_area,optional"`                // 场地设施
	WifiType         int                            `json:"wifi_type,optional"`                // Wifi 类型 0.无  1.收费  2. 免费
	FirstPass        bool                           `json:"firstPass,optional"`                // 是否第一次通过
	IsOpen           bool                           `json:"isOpen,optional,default=true"`      // 是否开启
}

// ApiStoreMembersInterestsResp 会员权益
type ApiStoreMembersInterestsResp struct {
	Icon  string `json:"icon"`  // 图标
	Name  string `json:"name"`  // 会员权益名称
	Value string `json:"value"` // 价格
}

// OpenTime 开放时间
type OpenTime struct {
	OpenDays  []int32 `json:"open_days"`  // 1,2,3,4,5,6,7 营业周期 周一到周日
	StartTime string  `json:"start_time"` // 开始营业时间
	EndTime   string  `json:"end_time"`   // 下班时间
}

// CheckStoreBindStatus 检查店铺绑定状态响应
type CheckStoreBindStatus struct {
	IsExist bool `json:"isExist"`
}
